1. Field of the Invention
The present invention generally relates to automatic group subscriptions. Specifically, the present invention relates to a method, system, and program product for providing automatic group subscriptions (e.g., for events).
2. Related Art
Existing publication/subscription systems (hereinafter “pub/sub systems”) such as Java Message Service (JMS) have limits on the numbers of subscriptions they can support due to memory constraints (Java and Java-based terms are trademarks of Sun Microsystems, Inc. in the United States or other countries). Moreover, as with any system, there are throughput limitations as measured by the number of messages they can deliver per second. Each additional subscription introduces an additional memory requirement and a workload for matching the subscription with published events. These limits greatly affect pub/sub system servers in enterprises and service providers that need to support a large number of individual subscriptions. For example, a user may wish to be notified when the price of a specific stock reaches $10 or when his/her country's team scores a goal in a World Cup soccer match. If a pub/sub system has 100,000 users and each user enters 10 subscriptions, then the pub/sub system has to match events with 1,000,000 subscriptions.
Operators of pub/sub systems attempt to circumvent this by creating groups of users and using one pub/sub subscription for all users with common subscription criteria. However, this creates a burden of work for the operator, who now has to manage the groups.
Another problem with this methodology is that user subscriptions can contain two types of data: subscription criteria and action specification, where the latter specifies user-specific actions to be taken when the users' subscription matches a published event. The IBM Intelligent Notification Services (INS) Subscription Manager is a system that supports action specifications; it is also referred to as an “extended pub/sub” system. In the INS Subscription Manager, a user may specify, for example, to be notified via e-mail for some events, but may wish to be notified via an SMS message or a phone call for events of high importance or high personal interest. When group subscriptions are used with pub/sub systems that support action specifications, the user action specifications would be lost when groups as previously described are used.
Yet another problem with implementing group support outside an extended pub/sub system is that it makes it difficult for an operator to provide a user with a consolidated view to see and manage his/her subscriptions since they are distributed in different parts of the overall system. Furthermore, the operator or administrator who creates the group subscriptions would have to guess as to what subscriptions large numbers of users would want to have. This could be very difficult to do accurately.
In view of the foregoing, there exists a need for a system that overcomes at least one of the deficiencies of the existing art.